<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF - 8">
    <meta name="viewport" content="width=device - width, initial - scale=1.0">
    <title>学生列表表格</title>
    <style>
        table,
        th,
        td {
            border: 1px solid #ccc;
            border-collapse: collapse;
            padding: 8px;
            text-align: center;
        }
        th {
            background-color: #f2f2f2;
        }
    </style>
</head>
<body>
    <h2>学生列表</h2>
    <script>
        const students = [
            { name: "小明", age: 18, gender: "男", hometown: "河北省" },
            { name: "小红", age: 19, gender: "女", hometown: "河南省" },
            { name: "小刚", age: 17, gender: "男", hometown: "山西省" },
            { name: "小丽", age: 18, gender: "女", hometown: "山东省" }
        ];
        const table = document.createElement('table');
        const header = '<thead><tr><th>序号</th><th>姓名</th><th>年龄</th><th>性别</th><th>家乡</th></tr></thead>';
        const tbodyContent = students.map((s, i) => `
            <tr>
                <td>${i + 1}</td>
                <td>${s.name}</td>
                <td>${s.age}</td>
                <td>${s.gender}</td>
                <td>${s.hometown}</td>
            </tr>
        `).join('');
        table.innerHTML = `${header}<tbody>${tbodyContent}</tbody>`;
        document.body.appendChild(table);
    </script>
</body>
</html>